#ifndef VmeModule_h
#define VmeModule_h

class VmeModule
{
 protected:
  int handle;
  unsigned int address;
  int mode;

 public:
  static const int A16D16 = 0;
  static const int A16D16FIFO = 1;
  static const int A16D16FIFODMA = 2;
  static const int A16D32 = 3;
  static const int A16D32FIFO = 4;
  static const int A16D32FIFODMA = 5;
  static const int A32D32 = 6;
  static const int A32D32FIFO = 7;
  static const int A32D32FIFODMA = 8;

  /// init constructor: handle is a filehandle, returned by open()
  VmeModule( int handle, unsigned int address )
			{ this->handle = handle; this->address = address; }

  /// access methods
  int getHandle() { return handle; }
  unsigned int getAddress() { return address; }
  void setAddress( unsigned int address ) { this->address = address; }

  int getMode() { return mode; }
};

#endif
